<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:ser="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:tns="urn:Ordering.Service.Contract" elementFormDefault="qualified" targetNamespace="urn:Ordering.Service.Contract" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import schemaLocation="http://localhost:3985/OrderingService.svc?xsd=xsd1" namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
  <xs:import schemaLocation="http://localhost:3985/OrderingService.svc?xsd=xsd3" namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
  <xs:complexType name="ArrayOfCustomerItem">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="CustomerItem" nillable="true" type="tns:CustomerItem" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfCustomerItem" nillable="true" type="tns:ArrayOfCustomerItem" />
  <xs:complexType name="CustomerItem">
    <xs:sequence>
      <xs:element minOccurs="0" name="Address" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Email" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Id" type="xs:int" />
      <xs:element minOccurs="0" name="Name" nillable="true" type="xs:string" />
    </xs:sequence>
    <xs:attribute ref="ser:Id" />
    <xs:attribute ref="ser:Ref" />
  </xs:complexType>
  <xs:element name="CustomerItem" nillable="true" type="tns:CustomerItem" />
  <xs:complexType name="ArrayOfOrderItem">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="OrderItem" nillable="true" type="tns:OrderItem" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfOrderItem" nillable="true" type="tns:ArrayOfOrderItem" />
  <xs:complexType name="OrderItem">
    <xs:sequence>
      <xs:element minOccurs="0" name="CustomerId" type="xs:int" />
      <xs:element minOccurs="0" name="CustomerName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="OrderDate" nillable="true" type="xs:dateTime" />
      <xs:element minOccurs="0" name="OrderNumber" type="xs:int" />
      <xs:element xmlns:q1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="ProductIds" nillable="true" type="q1:ArrayOfint" />
      <xs:element xmlns:q2="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="ProductLabels" nillable="true" type="q2:ArrayOfstring" />
      <xs:element minOccurs="0" name="TotalOrderPrice" type="xs:decimal" />
    </xs:sequence>
    <xs:attribute ref="ser:Id" />
    <xs:attribute ref="ser:Ref" />
  </xs:complexType>
  <xs:element name="OrderItem" nillable="true" type="tns:OrderItem" />
  <xs:complexType name="OrderDetail">
    <xs:sequence>
      <xs:element minOccurs="0" name="Customer" nillable="true" type="tns:CustomerItem" />
      <xs:element minOccurs="0" name="OrderDate" nillable="true" type="xs:dateTime" />
      <xs:element minOccurs="0" name="OrderLines" nillable="true" type="tns:ArrayOfOrderLineDetail" />
      <xs:element minOccurs="0" name="OrderNumber" type="xs:int" />
    </xs:sequence>
    <xs:attribute ref="ser:Id" />
    <xs:attribute ref="ser:Ref" />
  </xs:complexType>
  <xs:element name="OrderDetail" nillable="true" type="tns:OrderDetail" />
  <xs:complexType name="ArrayOfOrderLineDetail">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="OrderLineDetail" nillable="true" type="tns:OrderLineDetail" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfOrderLineDetail" nillable="true" type="tns:ArrayOfOrderLineDetail" />
  <xs:complexType name="OrderLineDetail">
    <xs:sequence>
      <xs:element minOccurs="0" name="Id" type="xs:int" />
      <xs:element minOccurs="0" name="Product" nillable="true" type="tns:ProductItem" />
      <xs:element minOccurs="0" name="Quantity" type="xs:int" />
      <xs:element minOccurs="0" name="UnitPrice" type="xs:decimal" />
    </xs:sequence>
    <xs:attribute ref="ser:Id" />
    <xs:attribute ref="ser:Ref" />
  </xs:complexType>
  <xs:element name="OrderLineDetail" nillable="true" type="tns:OrderLineDetail" />
  <xs:complexType name="ProductItem">
    <xs:sequence>
      <xs:element minOccurs="0" name="Description" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Id" type="xs:int" />
      <xs:element minOccurs="0" name="Label" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="SalePrice" nillable="true" type="xs:decimal" />
    </xs:sequence>
    <xs:attribute ref="ser:Id" />
    <xs:attribute ref="ser:Ref" />
  </xs:complexType>
  <xs:element name="ProductItem" nillable="true" type="tns:ProductItem" />
</xs:schema>